package com.offcn.order.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.offcn.order.pojo.PayLog;
import com.offcn.common.entity.PageResult;

import java.util.List;


/**
 * 支付日志业务层接口
 *
 * @author 秋林
 * @date 2022/10/16 20:48:57
 */
public interface PayLogService extends IService<PayLog> {

    /**
     * PayLog多条件分页查询
     *
     * @param payLog 支付日志
     * @param page   页面
     * @param size   大小
     * @return {@link PageResult}<{@link PayLog}>
     */
    PageResult<PayLog> findPage(PayLog payLog, int page, int size);

    /**
     * PayLog分页查询
     *
     * @param page 页面
     * @param size 大小
     * @return {@link PageResult}<{@link PayLog}>
     */
    PageResult<PayLog> findPage(int page, int size);

    /**
     * PayLog多条件搜索方法
     *
     * @param payLog 支付日志
     * @return {@link List}<{@link PayLog}>
     */
    List<PayLog> findList(PayLog payLog);

    /**
     * 删除PayLog
     *
     * @param id id
     */
    void delete(String id);

    /**
     * 修改PayLog数据
     * @param payLog 支付日志
     */
    void update(PayLog payLog);

    /**
     * 新增PayLog
     * @param payLog 支付日志
     */
    void add(PayLog payLog);

    /**
     * 根据ID查询PayLog
     * @param id id
     * @return
     */
     PayLog findById(String id);

    /**
     * 查询所有PayLog
     *
     * @return {@link List}<{@link PayLog}>
     */
    List<PayLog> findAll();

    /**
     * 根据用户查询payLog
     *
     * @param userId 用户id
     * @return {@link PayLog}
     */
    public PayLog searchPayLogFromRedis(String userId);
}
